#pragma once

#include <windows.h>
#include <gl\gl.h>
#include <gl\glu.h>

#include "Camera.h"

class SteerCamera : public Camera
{
private:
	Vec3 position;
	Vec3 lookTarget;

	float roll;
	float yaw;
	float pitch;

	POINT *lastMousePos;
	POINT screenCentre;

public:
	SteerCamera();

	void Process(float ms);
	void SetViewMatrix();

	Vec3 GetPosition();
	Vec3 GetTargetPosition();
	float GetRoll();

	void SetPosition(Vec3 position);
	void SetLookTarget(Vec3 lookTarget);
	void SetRoll(float roll);
	float GetTargetDistance();
};
